package org.jeecg.modules.water.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 抄表信息（水）
 * @Author: jeecg-boot
 * @Date:   2024-03-12
 * @Version: V1.0
 */
@Data
@TableName("lwgy_joint_water")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="lwgy_joint_water对象", description="抄表信息（水）")
public class LwgyJointWater implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**表具通讯码*/
	@Excel(name = "表具通讯码", width = 15)
    @ApiModelProperty(value = "表具通讯码")
    private String ispid;
	/**抄表时间*/
	@Excel(name = "抄表时间", width = 15)
    @ApiModelProperty(value = "抄表时间")
    private String curtime;
	/**分站号*/
	@Excel(name = "分站号", width = 15)
    @ApiModelProperty(value = "分站号")
    private String stationcode;
	/**当前读数*/
	@Excel(name = "当前读数", width = 15)
    @ApiModelProperty(value = "当前读数")
    private String curnum;
	/**阀门状态*/
	@Excel(name = "阀门状态", width = 15, dicCode = "valvestate2")
	@Dict(dicCode = "valvestate2")
    @ApiModelProperty(value = "阀门状态")
    private String valvestate;
	/**电池状态*/
	@Excel(name = "电池状态", width = 15, dicCode = "battery_status")
	@Dict(dicCode = "battery_status")
    @ApiModelProperty(value = "电池状态")
    private String battery;
	/**传感器状态*/
	@Excel(name = "传感器状态", width = 15, dicCode = "sensor_status")
	@Dict(dicCode = "sensor_status")
    @ApiModelProperty(value = "传感器状态")
    private String sensor;
	/**信号强度值*/
	@Excel(name = "信号强度值", width = 15)
    @ApiModelProperty(value = "信号强度值")
    private String signalstrength;
	/**抄表周期*/
	@Excel(name = "抄表周期", width = 15)
    @ApiModelProperty(value = "抄表周期")
    private String readperiod;
	/**校验是否有误*/
	@Excel(name = "校验是否有误", width = 15, dicCode = "readstate")
	@Dict(dicCode = "readstate")
    @ApiModelProperty(value = "校验是否有误")
    private String readstate;
	/**反向读数*/
	@Excel(name = "反向读数", width = 15)
    @ApiModelProperty(value = "反向读数")
    private String reversenum;
	/**抄表方式*/
	@Excel(name = "抄表方式", width = 15, dicCode = "reading_type")
    @Dict(dicCode = "reading_type")
    @ApiModelProperty(value = "抄表方式")//0自动抄表，1手动抄表
    private String meterReadingType;
    @Excel(name = "强磁攻击次数", width = 15)
    @ApiModelProperty(value = "")
    public String alarmNum;//强磁攻击次数
    @Excel(name = "强磁攻击时长", width = 15)
    @ApiModelProperty(value = "强磁攻击时长")
    public String alarmTime;//强磁攻击时长

    /**校区*/
    @TableField(exist = false)
    private String campusId;
    /**楼宇Id*/
    @TableField(exist = false)
    private String buildingId;
    /**单元Id*/
    @TableField(exist = false)
    private String unitId;
    /**楼层Id*/
    @TableField(exist = false)
    private String layerId;
    /**房间Id*/
    @TableField(exist = false)
    private String roomId;
    /**校区名称*/
    @Excel(name = "校区", width = 15)
    @TableField(exist = false)
    private String campusName;
    /**楼宇名称*/
    @Excel(name = "楼宇", width = 15)
    @TableField(exist = false)
    private String buildingName;
    /**单元名称*/
    @TableField(exist = false)
    private String unitName;
    /**楼层名称*/
    @Excel(name = "楼层", width = 15)
    @TableField(exist = false)
    private String layerName;
    /**房间名称*/
    @Excel(name = "房间", width = 15)
    @TableField(exist = false)
    private String roomName;
    @TableField(exist = false)
    private String type;

}

